package com.ruoyi.web.course.domain;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 视频课程对象 train_course
 *
 * @author 范书铭
 * @date 2024-10-10
 */
@ApiModel(value =  "视频课程",description = "")
@TableName(resultMap = "com.ruoyi.web.course.mapper.TrainCourseMapper.TrainCourseResult")
@Data
@EqualsAndHashCode(callSuper = true)
public class TrainCourse extends BaseEntity{
        private static final long serialVersionUID = 1L;

        /**  */
        @ApiModelProperty(name = "",notes = "")
        @Excel(name = "")
        @TableId(value = "id",type = IdType.AUTO)
        private String id;

        /** 课程标题 */
        @ApiModelProperty(name = "课程标题",notes = "")
        @Excel(name = "课程标题")
        private String title;

        /** 课程描述 */
        @ApiModelProperty(name = "课程描述",notes = "")
        @Excel(name = "课程描述")
        private String description;

        /** 课程作者 */
        @ApiModelProperty(name = "课程作者",notes = "")
        @Excel(name = "课程作者")
        private String author;

        /** 热度 */
        @ApiModelProperty(name = "热度",notes = "")
        @Excel(name = "热度")
        private Integer hot;

        /** 所属分类 */
        @ApiModelProperty(name = "所属分类",notes = "")
        @Excel(name = "所属分类")
        private Long courseType;

        /** 标签 */
        @ApiModelProperty(name = "标签",notes = "")
        @Excel(name = "标签")
        private String tags;

        @Override
        public String toString() {
                return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                        .append("id", getId())
                        .append("title", getTitle())
                        .append("description", getDescription())
                        .append("author", getAuthor())
                        .append("hot", getHot())
                        .append("courseType", getCourseType())
                        .append("tags", getTags())
                        .append("createBy", getCreateBy())
                        .append("createTime", getCreateTime())
                        .append("updateBy", getUpdateBy())
                        .append("updateTime", getUpdateTime())
                        .append("remark", getRemark())
                        .toString();
        }
}